home *** CD-ROM | disk | FTP | other *** search
/ PC User 2003 January / Disc 3 / Amethyst.iso / live / usr / share / vim / vim60 / menu.vim < prev    next >
Encoding:
Text File  |  2002-06-19  |  49.8 KB  |  1,249 lines

  1. " You can also use this as a start for your own set of menus.
  2. " Note that ":amenu" is often used to make a menu work in all modes.
  3. "
  4. " Maintainer:    Bram Moolenaar <Bram@vim.org>
  5. " Last Change:    2001 Oct 29
  6.  
  7. " Make sure the '<' and 'C' flags are not included in 'cpoptions', otherwise
  8. " <CR> would not be recognized.  See ":help 'cpoptions'".
  9. let s:cpo_save = &cpo
  10. set cpo&vim
  11.  
  12. " Avoid installing the menus twice
  13. if !exists("did_install_default_menus")
  14. let did_install_default_menus = 1
  15.  
  16.  
  17. if exists("v:lang") || &langmenu != ""
  18.   " Try to find a menu translation file for the current language.
  19.   if &langmenu != ""
  20.     if &langmenu =~ "none"
  21.       let s:lang = ""
  22.     else
  23.       let s:lang = &langmenu
  24.     endif
  25.   else
  26.     let s:lang = v:lang
  27.   endif
  28.   " A language name must be at least two characters, don't accept "C"
  29.   if strlen(s:lang) > 1
  30.     " We always use a lowercase name.
  31.     " Change "iso-8859" to "iso_8859", some systems appear to use this.
  32.     " Change spaces to underscores.
  33.     let s:lang = substitute(tolower(s:lang), "\\.iso-", "\\.iso_", "")
  34.     let s:lang = substitute(s:lang, " ", "_", "g")
  35.     menutrans clear
  36.     exe "runtime! lang/menu_" . s:lang . ".vim"
  37.  
  38.     if !exists("did_menu_trans")
  39.       " There is no exact match, try matching with a wildcard added
  40.       " (e.g. find menu_de_de.iso_8859-1.vim if s:lang == de_DE).
  41.       exe "runtime! lang/menu_" . s:lang . "*.vim"
  42.  
  43.       if !exists("did_menu_trans") && strlen($LANG) > 1
  44.     " On windows locale names are complicated, try using $LANG, it might
  45.     " have been set by set_init_1().
  46.     exe "runtime! lang/menu_" . tolower($LANG) . "*.vim"
  47.       endif
  48.     endif
  49.   endif
  50. endif
  51.  
  52.  
  53. " Help menu
  54. amenu 9999.10 &Help.&Overview<Tab><F1>        :help<CR>
  55. amenu 9999.20 &Help.&User\ Manual        :help usr_toc<CR>
  56. amenu 9999.30 &Help.&How-to\ links        :help how-to<CR>
  57. amenu <silent> 9999.40 &Help.&Find\.\.\.    :call <SID>Helpfind()<CR>
  58. amenu 9999.45 &Help.-sep1-            <nul>
  59. amenu 9999.50 &Help.&Credits            :help credits<CR>
  60. amenu 9999.60 &Help.Co&pying            :help copying<CR>
  61. amenu 9999.70 &Help.O&rphans            :help iccf<CR>
  62. amenu 9999.75 &Help.-sep2-            <nul>
  63. amenu 9999.80 &Help.&Version            :version<CR>
  64. amenu 9999.90 &Help.&About            :intro<CR>
  65.  
  66. fun! s:Helpfind()
  67.   if !exists("g:menutrans_help_dialog")
  68.     let g:menutrans_help_dialog = "Enter a command or word to find help on:\n\nPrepend i_ for Input mode commands (e.g.: i_CTRL-X)\nPrepend c_ for command-line editing commands (e.g.: c_<Del>)\nPrepend ' for an option name (e.g.: 'shiftwidth')"
  69.   endif
  70.   let h = inputdialog(g:menutrans_help_dialog)
  71.   if h != ""
  72.     let v:errmsg = ""
  73.     silent! exe "help " . h
  74.     if v:errmsg != ""
  75.       echo v:errmsg
  76.     endif
  77.   endif
  78. endfun
  79.  
  80. " File menu
  81. amenu 10.310 &File.&Open\.\.\.<Tab>:e        :browse confirm e<CR>
  82. amenu 10.320 &File.Sp&lit-Open\.\.\.<Tab>:sp    :browse sp<CR>
  83. amenu 10.325 &File.&New<Tab>:enew        :confirm enew<CR>
  84. amenu <silent> 10.330 &File.&Close<Tab>:close
  85.     \ :if winheight(2) < 0 <Bar>
  86.     \   confirm enew <Bar>
  87.     \ else <Bar>
  88.     \   confirm close <Bar>
  89.     \ endif<CR>
  90. amenu 10.335 &File.-SEP1-            :
  91. amenu <silent> 10.340 &File.&Save<Tab>:w    :if expand("%") == ""<Bar>browse confirm w<Bar>else<Bar>confirm w<Bar>endif<CR>
  92. amenu 10.350 &File.Save\ &As\.\.\.<Tab>:sav    :browse confirm saveas<CR>
  93.  
  94. if has("diff")
  95.   amenu 10.400 &File.-SEP2-            :
  96.   amenu 10.410 &File.Split\ &Diff\ with\.\.\.    :browse vert diffsplit<CR>
  97.   amenu 10.420 &File.Split\ Patched\ &By\.\.\.    :browse vert diffpatch<CR>
  98. endif
  99.  
  100. if has("printer")
  101.   amenu 10.500 &File.-SEP3-            :
  102.   amenu 10.510 &File.&Print            :hardcopy<CR>
  103.   vunmenu &File.&Print
  104.   vmenu &File.&Print                :hardcopy<CR>
  105. elseif has("unix")
  106.   amenu 10.500 &File.-SEP3-            :
  107.   amenu 10.510 &File.&Print            :w !lpr<CR>
  108.   vunmenu &File.&Print
  109.   vmenu &File.&Print                :w !lpr<CR>
  110. endif
  111. amenu 10.600 &File.-SEP4-            :
  112. amenu 10.610 &File.Sa&ve-Exit<Tab>:wqa        :confirm wqa<CR>
  113. amenu 10.620 &File.E&xit<Tab>:qa        :confirm qa<CR>
  114.  
  115. " Pasting blockwise and linewise selections is not possible in Insert and
  116. " Visual mode without the +virtualedit feature.  They are pasted as if they
  117. " were characterwise instead.
  118. if has("virtualedit")
  119.   nnoremap <silent> <SID>Paste :call <SID>Paste()<CR>
  120.   func! <SID>Paste()
  121.     let ove = &ve
  122.     set ve=all
  123.     normal `^"+gPi
  124.     let &ve = ove
  125.   endfunc
  126. else
  127.   nnoremap <silent> <SID>Paste "=@+.'xy'<CR>gPFx"_2x
  128. endif
  129.  
  130. " Edit menu
  131. amenu 20.310 &Edit.&Undo<Tab>u            u
  132. amenu 20.320 &Edit.&Redo<Tab>^R            <C-R>
  133. amenu 20.330 &Edit.Rep&eat<Tab>\.        .
  134. amenu 20.335 &Edit.-SEP1-            :
  135. vmenu 20.340 &Edit.Cu&t<Tab>"+x            "+x
  136. vmenu 20.350 &Edit.&Copy<Tab>"+y        "+y
  137. cmenu 20.350 &Edit.&Copy<Tab>"+y        <C-Y>
  138. nmenu 20.360 &Edit.&Paste<Tab>"+P        "+gP
  139. cmenu         &Edit.&Paste<Tab>"+P        <C-R>+
  140. if has("virtualedit")
  141.   vmenu         &Edit.&Paste<Tab>"+P        "-c<Esc><SID>Paste
  142.   imenu         &Edit.&Paste<Tab>"+P        <Esc><SID>Pastegi
  143. else
  144.   vmenu         &Edit.&Paste<Tab>"+P        "-c<Esc>gix<Esc><SID>Paste"_x
  145.   imenu         &Edit.&Paste<Tab>"+P        x<Esc><SID>Paste"_s
  146. endif
  147. nmenu 20.370 &Edit.Put\ &Before<Tab>[p        [p
  148. imenu         &Edit.Put\ &Before<Tab>[p        <C-O>[p
  149. nmenu 20.380 &Edit.Put\ &After<Tab>]p        ]p
  150. imenu         &Edit.Put\ &After<Tab>]p        <C-O>]p
  151. if has("win32") || has("win16")
  152.   vmenu 20.390 &Edit.&Delete<Tab>x        x
  153. endif
  154. amenu <silent> 20.400 &Edit.&Select\ all<Tab>ggVG    :if &slm != ""<Bar>exe ":norm gggH<C-O>G"<Bar>else<Bar>exe ":norm ggVG"<Bar>endif<CR>
  155. amenu 20.405 &Edit.-SEP2-            :
  156. if has("win32")  || has("win16") || has("gui_gtk") || has("gui_motif")
  157.   amenu 20.410 &Edit.&Find\.\.\.        :promptfind<CR>
  158.   vunmenu      &Edit.&Find\.\.\.
  159.   vmenu           &Edit.&Find\.\.\.        y:promptfind <C-R>"<CR>
  160.   amenu 20.420 &Edit.Find\ and\ Rep&lace\.\.\.    :promptrepl<CR>
  161.   vunmenu      &Edit.Find\ and\ Rep&lace\.\.\.
  162.   vmenu           &Edit.Find\ and\ Rep&lace\.\.\.    y:promptrepl <C-R>"<CR>
  163. else
  164.   amenu 20.410 &Edit.&Find<Tab>/            /
  165.   amenu 20.420 &Edit.Find\ and\ Rep&lace<Tab>:%s    :%s/
  166.   vunmenu      &Edit.Find\ and\ Rep&lace<Tab>:%s
  167.   vmenu           &Edit.Find\ and\ Rep&lace<Tab>:s        :s/
  168. endif
  169. amenu 20.425 &Edit.-SEP3-            :
  170. amenu 20.430 &Edit.Settings\ &Window        :options<CR>
  171.  
  172. " Edit/Global Settings
  173. amenu 20.440.100 &Edit.&Global\ Settings.Toggle\ Pattern\ &Highlight<Tab>:set\ hls!    :set hls! hls?<CR>
  174. amenu 20.440.110 &Edit.&Global\ Settings.Toggle\ &Ignore-case<Tab>:set\ ic!    :set ic! ic?<CR>
  175. amenu 20.440.110 &Edit.&Global\ Settings.Toggle\ &Showmatch<Tab>:set\ sm!    :set sm! sm?<CR>
  176.  
  177. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 1\  :set so=1<CR>
  178. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 2\  :set so=2<CR>
  179. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 3\  :set so=3<CR>
  180. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 4\  :set so=4<CR>
  181. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 5\  :set so=5<CR>
  182. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 7\  :set so=7<CR>
  183. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 10\  :set so=10<CR>
  184. amenu 20.440.120 &Edit.&Global\ Settings.&Context\ lines.\ 100\  :set so=100<CR>
  185.  
  186. amenu 20.440.130.40 &Edit.&Global\ Settings.&Virtual\ Edit.Never :set ve=<CR>
  187. amenu 20.440.130.50 &Edit.&Global\ Settings.&Virtual\ Edit.Block\ Selection :set ve=block<CR>
  188. amenu 20.440.130.60 &Edit.&Global\ Settings.&Virtual\ Edit.Insert\ mode :set ve=insert<CR>
  189. amenu 20.440.130.70 &Edit.&Global\ Settings.&Virtual\ Edit.Block\ and\ Insert :set ve=block,insert<CR>
  190. amenu 20.440.130.80 &Edit.&Global\ Settings.&Virtual\ Edit.Always :set ve=all<CR>
  191. amenu 20.440.140 &Edit.&Global\ Settings.Toggle\ Insert\ &Mode<Tab>:set\ im!    :set im!<CR>
  192. amenu 20.440.145 &Edit.&Global\ Settings.Toggle\ Vi\ C&ompatible<Tab>:set\ cp!    :set cp!<CR>
  193. amenu <silent> 20.440.150 &Edit.&Global\ Settings.Search\ &Path\.\.\.  :call <SID>SearchP()<CR>
  194. amenu <silent> 20.440.160 &Edit.&Global\ Settings.Ta&g\ Files\.\.\.  :call <SID>TagFiles()<CR>
  195. "
  196. " GUI options
  197. amenu 20.440.300 &Edit.&Global\ Settings.-SEP1-        :
  198. amenu <silent> 20.440.310 &Edit.&Global\ Settings.Toggle\ &Toolbar        :call <SID>ToggleGuiOption("T")<CR>
  199. amenu <silent> 20.440.320 &Edit.&Global\ Settings.Toggle\ &Bottom\ Scrollbar    :call <SID>ToggleGuiOption("b")<CR>
  200. amenu <silent> 20.440.330 &Edit.&Global\ Settings.Toggle\ &Left\ Scrollbar    :call <SID>ToggleGuiOption("l")<CR>
  201. amenu <silent> 20.440.340 &Edit.&Global\ Settings.Toggle\ &Right\ Scrollbar    :call <SID>ToggleGuiOption("r")<CR>
  202.  
  203. fun! s:SearchP()
  204.   if !exists("g:menutrans_path_dialog")
  205.     let g:menutrans_path_dialog = "Enter search path for files.\nSeparate directory names with a comma."
  206.   endif
  207.   let n = inputdialog(g:menutrans_path_dialog, substitute(&path, '\\ ', ' ', 'g'))
  208.   if n != ""
  209.     let &path = substitute(n, ' ', '\\ ', 'g')
  210.   endif
  211. endfun
  212.  
  213. fun! s:TagFiles()
  214.   if !exists("g:menutrans_tags_dialog")
  215.     let g:menutrans_tags_dialog = "Enter names of tag files.\nSeparate the names with a comma."
  216.   endif
  217.   let n = inputdialog(g:menutrans_tags_dialog, substitute(&tags, '\\ ', ' ', 'g'))
  218.   if n != ""
  219.     let &tags = substitute(n, ' ', '\\ ', 'g')
  220.   endif
  221. endfun
  222.  
  223. fun! s:ToggleGuiOption(option)
  224.     " If a:option is already set in guioptions, then we want to remove it
  225.     if match(&guioptions, "\\C" . a:option) > -1
  226.     exec "set go-=" . a:option
  227.     else
  228.     exec "set go+=" . a:option
  229.     endif
  230. endfun
  231.  
  232. " Edit/File Settings
  233.  
  234. " Boolean options
  235. amenu 20.440.100 &Edit.F&ile\ Settings.Toggle\ Line\ &Numbering<Tab>:set\ nu!    :set nu! nu?<CR>
  236. amenu 20.440.110 &Edit.F&ile\ Settings.Toggle\ &List\ Mode<Tab>:set\ list!    :set list! list?<CR>
  237. amenu 20.440.120 &Edit.F&ile\ Settings.Toggle\ Line\ &Wrap<Tab>:set\ wrap!    :set wrap! wrap?<CR>
  238. amenu 20.440.130 &Edit.F&ile\ Settings.Toggle\ W&rap\ at\ word<Tab>:set\ lbr!    :set lbr! lbr?<CR>
  239. amenu 20.440.160 &Edit.F&ile\ Settings.Toggle\ &expand-tab<Tab>:set\ et!    :set et! et?<CR>
  240. amenu 20.440.170 &Edit.F&ile\ Settings.Toggle\ &auto-indent<Tab>:set\ ai!    :set ai! ai?<CR>
  241. amenu 20.440.180 &Edit.F&ile\ Settings.Toggle\ &C-indenting<Tab>:set\ cin!    :set cin! cin?<CR>
  242.  
  243. " other options
  244. amenu 20.440.600 &Edit.F&ile\ Settings.-SEP2-        :
  245. amenu 20.440.610.20 &Edit.F&ile\ Settings.&Shiftwidth.2   :set sw=2 sw?<CR>
  246. amenu 20.440.610.30 &Edit.F&ile\ Settings.&Shiftwidth.3   :set sw=3 sw?<CR>
  247. amenu 20.440.610.40 &Edit.F&ile\ Settings.&Shiftwidth.4   :set sw=4 sw?<CR>
  248. amenu 20.440.610.50 &Edit.F&ile\ Settings.&Shiftwidth.5   :set sw=5 sw?<CR>
  249. amenu 20.440.610.60 &Edit.F&ile\ Settings.&Shiftwidth.6   :set sw=6 sw?<CR>
  250. amenu 20.440.610.80 &Edit.F&ile\ Settings.&Shiftwidth.8   :set sw=8 sw?<CR>
  251.  
  252. amenu 20.440.620.20 &Edit.F&ile\ Settings.Soft\ &Tabstop.2   :set sts=2 sts?<CR>
  253. amenu 20.440.620.30 &Edit.F&ile\ Settings.Soft\ &Tabstop.3   :set sts=3 sts?<CR>
  254. amenu 20.440.620.40 &Edit.F&ile\ Settings.Soft\ &Tabstop.4   :set sts=4 sts?<CR>
  255. amenu 20.440.620.50 &Edit.F&ile\ Settings.Soft\ &Tabstop.5   :set sts=5 sts?<CR>
  256. amenu 20.440.620.60 &Edit.F&ile\ Settings.Soft\ &Tabstop.6   :set sts=6 sts?<CR>
  257. amenu 20.440.620.80 &Edit.F&ile\ Settings.Soft\ &Tabstop.8   :set sts=8 sts?<CR>
  258.  
  259. amenu <silent> 20.440.630 &Edit.F&ile\ Settings.Te&xt\ Width\.\.\.  :call <SID>TextWidth()<CR>
  260. amenu <silent> 20.440.640 &Edit.F&ile\ Settings.&File\ Format\.\.\.  :call <SID>FileFormat()<CR>
  261. fun! s:TextWidth()
  262.   if !exists("g:menutrans_textwidth_dialog")
  263.     let g:menutrans_textwidth_dialog = "Enter new text width (0 to disable formatting): "
  264.   endif
  265.   let n = inputdialog(g:menutrans_textwidth_dialog, &tw)
  266.   if n != ""
  267.     " remove leading zeros to avoid it being used as an octal number
  268.     let &tw = substitute(n, "^0*", "", "")
  269.   endif
  270. endfun
  271.  
  272. fun! s:FileFormat()
  273.   if !exists("g:menutrans_fileformat_dialog")
  274.     let g:menutrans_fileformat_dialog = "Select format for writing the file"
  275.   endif
  276.   if &ff == "dos"
  277.     let def = 2
  278.   elseif &ff == "mac"
  279.     let def = 3
  280.   else
  281.     let def = 1
  282.   endif
  283.   let n = confirm(g:menutrans_fileformat_dialog, "&Unix\n&Dos\n&Mac\n&Cancel", def, "Question")
  284.   if n == 1
  285.     set ff=unix
  286.   elseif n == 2
  287.     set ff=dos
  288.   elseif n == 3
  289.     set ff=mac
  290.   endif
  291. endfun
  292.  
  293. " Setup the Edit.Color Scheme submenu
  294. let s:n = globpath(&runtimepath, "colors/*.vim")
  295. let s:idx = 100
  296. while strlen(s:n) > 0
  297.   let s:i = stridx(s:n, "\n")
  298.   if s:i < 0
  299.     let s:name = s:n
  300.     let s:n = ""
  301.   else
  302.     let s:name = strpart(s:n, 0, s:i)
  303.     let s:n = strpart(s:n, s:i + 1, 19999)
  304.   endif
  305.   let s:name = substitute(s:name, '.*[/\\:]\([^/\\:]*\)\.vim', '\1', '')
  306.   exe "amenu 20.450." . s:idx . ' &Edit.C&olor\ Scheme.' . s:name . " :colors " . s:name . "<CR>"
  307.   unlet s:name
  308.   unlet s:i
  309.   let s:idx = s:idx + 10
  310. endwhile
  311. unlet s:n
  312. unlet s:idx
  313.  
  314. " Setup the Edit.Keymap submenu
  315. if has("keymap")
  316.   let s:n = globpath(&runtimepath, "keymap/*.vim")
  317.   if s:n != ""
  318.     let s:idx = 100
  319.     amenu 20.460.90 &Edit.&Keymap.None :set keymap=<CR>
  320.     while strlen(s:n) > 0
  321.       let s:i = stridx(s:n, "\n")
  322.       if s:i < 0
  323.     let s:name = s:n
  324.     let s:n = ""
  325.       else
  326.     let s:name = strpart(s:n, 0, s:i)
  327.     let s:n = strpart(s:n, s:i + 1, 19999)
  328.       endif
  329.       let s:name = substitute(s:name, '.*[/\\:]\([^/\\:_]*\)\(_[0-9a-zA-Z-]*\)\=\.vim', '\1', '')
  330.       exe "amenu 20.460." . s:idx . ' &Edit.&Keymap.' . s:name . " :set keymap=" . s:name . "<CR>"
  331.       unlet s:name
  332.       unlet s:i
  333.       let s:idx = s:idx + 10
  334.     endwhile
  335.     unlet s:idx
  336.   endif
  337.   unlet s:n
  338. endif
  339. if has("win32") || has("win16") || has("gui_gtk") || has("gui_photon")
  340.   amenu 20.470 &Edit.Select\ Fo&nt\.\.\.    :set guifont=*<CR>
  341. endif
  342.  
  343. " Programming menu
  344. amenu 40.300 &Tools.&Jump\ to\ this\ tag<Tab>g^] g<C-]>
  345. vunmenu &Tools.&Jump\ to\ this\ tag<Tab>g^]
  346. vmenu &Tools.&Jump\ to\ this\ tag<Tab>g^]    g<C-]>
  347. amenu 40.310 &Tools.Jump\ &back<Tab>^T        <C-T>
  348. if has("vms")
  349.   amenu 40.320 &Tools.Build\ &Tags\ File        :!mc vim:ctags .<CR>
  350. else
  351.   amenu 40.320 &Tools.Build\ &Tags\ File        :!ctags -R .<CR>
  352. endif
  353.  
  354. " Tools.Fold Menu
  355. if has("folding")
  356.   amenu 40.330 &Tools.-SEP1-            :
  357.   " open close folds
  358.   amenu 40.340.110 &Tools.&Folding.&Enable/Disable\ folds<Tab>zi    zi
  359.   amenu 40.340.120 &Tools.&Folding.&View\ Cursor\ Line<Tab>zv    zv
  360.   amenu 40.340.120 &Tools.&Folding.Vie&w\ Cursor\ Line\ only<Tab>zMzx    zMzx
  361.   amenu 40.340.130 &Tools.&Folding.C&lose\ more\ folds<Tab>zm    zm
  362.   amenu 40.340.140 &Tools.&Folding.&Close\ all\ folds<Tab>zM    zM
  363.   amenu 40.340.150 &Tools.&Folding.O&pen\ more\ folds<Tab>zr    zr
  364.   amenu 40.340.160 &Tools.&Folding.&Open\ all\ folds<Tab>zR    zR
  365.   " fold method
  366.   amenu 40.340.200 &Tools.&Folding.-SEP1-            :
  367.   amenu 40.340.210 &Tools.&Folding.Fold\ Met&hod.M&anual    :set fdm=manual<CR>
  368.   amenu 40.340.210 &Tools.&Folding.Fold\ Met&hod.I&ndent    :set fdm=indent<CR>
  369.   amenu 40.340.210 &Tools.&Folding.Fold\ Met&hod.E&xpression    :set fdm=expr<CR>
  370.   amenu 40.340.210 &Tools.&Folding.Fold\ Met&hod.S&yntax    :set fdm=syntax<CR>
  371.   amenu 40.340.210 &Tools.&Folding.Fold\ Met&hod.&Diff        :set fdm=diff<CR>
  372.   amenu 40.340.210 &Tools.&Folding.Fold\ Met&hod.Ma&rker    :set fdm=marker<CR>
  373.   " create and delete folds
  374.   vmenu 40.340.220 &Tools.&Folding.Create\ &Fold<Tab>zf        zf
  375.   amenu 40.340.230 &Tools.&Folding.&Delete\ Fold<Tab>zd        zd
  376.   amenu 40.340.240 &Tools.&Folding.Delete\ &All\ Folds<Tab>zD    zD
  377.   " moving around in folds
  378.   amenu 40.340.300 &Tools.&Folding.-SEP2-            :
  379.   amenu 40.340.310.10 &Tools.&Folding.Fold\ column\ &width.\ 0\     :set fdc=0<CR>
  380.   amenu 40.340.310.20 &Tools.&Folding.Fold\ column\ &width.\ 2\     :set fdc=2<CR>
  381.   amenu 40.340.310.30 &Tools.&Folding.Fold\ column\ &width.\ 3\     :set fdc=3<CR>
  382.   amenu 40.340.310.40 &Tools.&Folding.Fold\ column\ &width.\ 4\     :set fdc=4<CR>
  383.   amenu 40.340.310.50 &Tools.&Folding.Fold\ column\ &width.\ 5\     :set fdc=5<CR>
  384.   amenu 40.340.310.60 &Tools.&Folding.Fold\ column\ &width.\ 6\     :set fdc=6<CR>
  385.   amenu 40.340.310.70 &Tools.&Folding.Fold\ column\ &width.\ 7\     :set fdc=7<CR>
  386.   amenu 40.340.310.80 &Tools.&Folding.Fold\ column\ &width.\ 8\     :set fdc=8<CR>
  387. endif  " has folding
  388.  
  389. if has("diff")
  390.   amenu 40.350.100 &Tools.&Diff.&Update        :diffupdate<CR>
  391.   amenu 40.350.110 &Tools.&Diff.&Get\ Block    :diffget<CR>
  392.   vunmenu &Tools.&Diff.&Get\ Block
  393.   vmenu &Tools.&Diff.&Get\ Block        :diffget<CR>
  394.   amenu 40.350.120 &Tools.&Diff.&Put\ Block    :diffput<CR>
  395.   vunmenu &Tools.&Diff.&Put\ Block
  396.   vmenu &Tools.&Diff.&Put\ Block        :diffput<CR>
  397. endif
  398.  
  399. amenu 40.358 &Tools.-SEP2-                :
  400. amenu 40.360 &Tools.&Make<Tab>:make            :make<CR>
  401. amenu 40.370 &Tools.&List\ Errors<Tab>:cl        :cl<CR>
  402. amenu 40.380 &Tools.L&ist\ Messages<Tab>:cl!        :cl!<CR>
  403. amenu 40.390 &Tools.&Next\ Error<Tab>:cn        :cn<CR>
  404. amenu 40.400 &Tools.&Previous\ Error<Tab>:cp        :cp<CR>
  405. amenu 40.410 &Tools.&Older\ List<Tab>:cold        :colder<CR>
  406. amenu 40.420 &Tools.N&ewer\ List<Tab>:cnew        :cnewer<CR>
  407. amenu 40.430.50 &Tools.Error\ &Window.&Update<Tab>:cwin    :cwin<CR>
  408. amenu 40.430.60 &Tools.Error\ &Window.&Open<Tab>:copen    :copen<CR>
  409. amenu 40.430.70 &Tools.Error\ &Window.&Close<Tab>:cclose :cclose<CR>
  410. amenu 40.520 &Tools.-SEP3-            :
  411. amenu <silent> 40.530 &Tools.&Convert\ to\ HEX<Tab>:%!xxd
  412.     \ :call <SID>XxdConv()<CR>
  413. amenu <silent> 40.540 &Tools.Conve&rt\ back<Tab>:%!xxd\ -r
  414.     \ :call <SID>XxdBack()<CR>
  415.  
  416. " Use a function to do the conversion, so that it also works with 'insertmode'
  417. " set.
  418. func! s:XxdConv()
  419.   let mod = &mod
  420.   if has("vms")
  421.     %!mc vim:xxd
  422.   else
  423.     %!xxd
  424.   endif
  425.   set ft=xxd
  426.   let &mod = mod
  427. endfun
  428.  
  429. func! s:XxdBack()
  430.   let mod = &mod
  431.   if has("vms")
  432.     %!mc vim:xxd -r
  433.   else
  434.     %!xxd -r
  435.   endif
  436.   doautocmd filetypedetect BufReadPost
  437.   let &mod = mod
  438. endfun
  439.  
  440. " Setup the Tools.Compiler submenu
  441. let s:n = globpath(&runtimepath, "compiler/*.vim")
  442. let s:idx = 100
  443. while strlen(s:n) > 0
  444.   let s:i = stridx(s:n, "\n")
  445.   if s:i < 0
  446.     let s:name = s:n
  447.     let s:n = ""
  448.   else
  449.     let s:name = strpart(s:n, 0, s:i)
  450.     let s:n = strpart(s:n, s:i + 1, 19999)
  451.   endif
  452.   let s:name = substitute(s:name, '.*[/\\:]\([^/\\:]*\)\.vim', '\1', '')
  453.   exe "amenu 30.440." . s:idx . ' &Tools.&Set\ Compiler.' . s:name . " :compiler " . s:name . "<CR>"
  454.   unlet s:name
  455.   unlet s:i
  456.   let s:idx = s:idx + 10
  457. endwhile
  458. unlet s:n
  459. unlet s:idx
  460.  
  461. if !exists("no_buffers_menu")
  462.  
  463. " Buffer list menu -- Setup functions & actions
  464.  
  465. " wait with building the menu until after loading 'session' files. Makes
  466. " startup faster.
  467. let s:bmenu_wait = 1
  468.  
  469. if !exists("bmenu_priority")
  470.   let bmenu_priority = 60
  471. endif
  472.  
  473. func! s:BMAdd()
  474.   if s:bmenu_wait == 0
  475.     " when adding too many buffers, redraw in short format
  476.     if s:bmenu_count == &menuitems && s:bmenu_short == 0
  477.       call s:BMShow()
  478.     else
  479.       call <SID>BMFilename(expand("<afile>"), expand("<abuf>"))
  480.       let s:bmenu_count = s:bmenu_count + 1
  481.     endif
  482.   endif
  483. endfunc
  484.  
  485. func! s:BMRemove()
  486.   if s:bmenu_wait == 0
  487.     let name = expand("<afile>")
  488.     if isdirectory(name)
  489.       return
  490.     endif
  491.     let munge = <SID>BMMunge(name, expand("<abuf>"))
  492.  
  493.     if s:bmenu_short == 0
  494.       exe 'silent! aun &Buffers.' . munge
  495.     else
  496.       exe 'silent! aun &Buffers.' . <SID>BMHash2(munge) . munge
  497.     endif
  498.     let s:bmenu_count = s:bmenu_count - 1
  499.   endif
  500. endfunc
  501.  
  502. " Create the buffer menu (delete an existing one first).
  503. func! s:BMShow(...)
  504.   let s:bmenu_wait = 1
  505.   let s:bmenu_short = 1
  506.   let s:bmenu_count = 0
  507.   "
  508.   " get new priority, if exists
  509.   if a:0 == 1
  510.     let g:bmenu_priority = a:1
  511.   endif
  512.  
  513.   " remove old menu, if exists; keep one entry to avoid a torn off menu to
  514.   " disappear.
  515.   silent! unmenu &Buffers
  516.   exe 'menu ' . g:bmenu_priority . ".1 &Buffers.Dummy l"
  517.   silent! unmenu! &Buffers
  518.  
  519.   " create new menu; set 'cpo' to include the <CR>
  520.   let cpo_save = &cpo
  521.   set cpo&vim
  522.   exe 'am <silent> ' . g:bmenu_priority . ".2 &Buffers.&Refresh\\ menu :call <SID>BMShow()<CR>"
  523.   exe 'am ' . g:bmenu_priority . ".4 &Buffers.&Delete :bd<CR>"
  524.   exe 'am ' . g:bmenu_priority . ".6 &Buffers.&Alternate :b #<CR>"
  525.   exe 'am ' . g:bmenu_priority . ".7 &Buffers.&Next :bnext<CR>"
  526.   exe 'am ' . g:bmenu_priority . ".8 &Buffers.&Previous :bprev<CR>"
  527.   exe 'am ' . g:bmenu_priority . ".9 &Buffers.-SEP- :"
  528.   let &cpo = cpo_save
  529.   unmenu &Buffers.Dummy
  530.  
  531.   " figure out how many buffers there are
  532.   let buf = 1
  533.   while buf <= bufnr('$')
  534.     if bufexists(buf) && !isdirectory(bufname(buf)) && buflisted(buf)
  535.                         \ && !getbufvar(buf, "&bufsecret")
  536.       let s:bmenu_count = s:bmenu_count + 1
  537.     endif
  538.     let buf = buf + 1
  539.   endwhile
  540.   if s:bmenu_count <= &menuitems
  541.     let s:bmenu_short = 0
  542.   endif
  543.  
  544.   " iterate through buffer list, adding each buffer to the menu:
  545.   let buf = 1
  546.   while buf <= bufnr('$')
  547.     if bufexists(buf) && !isdirectory(bufname(buf)) && buflisted(buf)
  548.                         \ && !getbufvar(buf, "&bufsecret")
  549.       call <SID>BMFilename(bufname(buf), buf)
  550.     endif
  551.     let buf = buf + 1
  552.   endwhile
  553.   let s:bmenu_wait = 0
  554.   aug buffer_list
  555.   au!
  556.   au BufCreate,BufFilePost * call <SID>BMAdd()
  557.   au BufDelete,BufFilePre * call <SID>BMRemove()
  558.   aug END
  559. endfunc
  560.  
  561. func! s:BMHash(name)
  562.   " Make name all upper case, so that chars are between 32 and 96
  563.   let nm = substitute(a:name, ".*", '\U\0', "")
  564.   if has("ebcdic")
  565.     " HACK: Replace all non alphabetics with 'Z'
  566.     "       Just to make it work for now.
  567.     let nm = substitute(nm, "[^A-Z]", 'Z', "g")
  568.     let sp = char2nr('A') - 1
  569.   else
  570.     let sp = char2nr(' ')
  571.   endif
  572.   " convert first six chars into a number for sorting:
  573.   return (char2nr(nm[0]) - sp) * 0x800000 + (char2nr(nm[1]) - sp) * 0x20000 + (char2nr(nm[2]) - sp) * 0x1000 + (char2nr(nm[3]) - sp) * 0x80 + (char2nr(nm[4]) - sp) * 0x20 + (char2nr(nm[5]) - sp)
  574. endfunc
  575.  
  576. func! s:BMHash2(name)
  577.   let nm = substitute(a:name, ".", '\L\0', "")
  578.   " Not exactly right for EBCDIC...
  579.   if nm[0] < 'a' || nm[0] > 'z'
  580.     return '&others.'
  581.   elseif nm[0] <= 'd'
  582.     return '&abcd.'
  583.   elseif nm[0] <= 'h'
  584.     return '&efgh.'
  585.   elseif nm[0] <= 'l'
  586.     return '&ijkl.'
  587.   elseif nm[0] <= 'p'
  588.     return '&mnop.'
  589.   elseif nm[0] <= 't'
  590.     return '&qrst.'
  591.   else
  592.     return '&u-z.'
  593.   endif
  594. endfunc
  595.  
  596. " insert a buffer name into the buffer menu:
  597. func! s:BMFilename(name, num)
  598.   if isdirectory(a:name)
  599.     return
  600.   endif
  601.   let munge = <SID>BMMunge(a:name, a:num)
  602.   let hash = <SID>BMHash(munge)
  603.   if s:bmenu_short == 0
  604.     let name = 'am ' . g:bmenu_priority . '.' . hash . ' &Buffers.' . munge
  605.   else
  606.     let name = 'am ' . g:bmenu_priority . '.' . hash . '.' . hash . ' &Buffers.' . <SID>BMHash2(munge) . munge
  607.   endif
  608.   " set 'cpo' to include the <CR>
  609.   let cpo_save = &cpo
  610.   set cpo&vim
  611.   exe name . ' :b' . a:num . '<CR>'
  612.   let &cpo = cpo_save
  613. endfunc
  614.  
  615. " Truncate a long path to fit it in a menu item.
  616. if !exists("g:bmenu_max_pathlen")
  617.   let g:bmenu_max_pathlen = 35
  618. endif
  619. func! s:BMTruncName(fname)
  620.   let name = a:fname
  621.   if g:bmenu_max_pathlen < 5
  622.     let name = ""
  623.   else
  624.     let len = strlen(name)
  625.     if len > g:bmenu_max_pathlen
  626.       let amount = (g:bmenu_max_pathlen / 2) - 2
  627.       let left = strpart(name, 0, amount)
  628.       let amount = g:bmenu_max_pathlen - amount - 3
  629.       let right = strpart(name, len - amount, amount)
  630.       let name = left . '...' . right
  631.     endif
  632.   endif
  633.   return name
  634. endfunc
  635.  
  636. func! s:BMMunge(fname, bnum)
  637.   let name = a:fname
  638.   if name == ''
  639.     if !exists("g:menutrans_no_file")
  640.       let g:menutrans_no_file = "[No file]"
  641.     endif
  642.     let name = g:menutrans_no_file
  643.   else
  644.     let name = fnamemodify(name, ':p:~')
  645.   endif
  646.   " detach file name and separate it out:
  647.   let name2 = fnamemodify(name, ':t')
  648.   if a:bnum >= 0
  649.     let name2 = name2 . ' (' . a:bnum . ')'
  650.   endif
  651.   let name = name2 . "\t" . <SID>BMTruncName(fnamemodify(name,':h'))
  652.   let name = escape(name, "\\. \t|")
  653.   let name = substitute(name, "\n", "^@", "g")
  654.   return name
  655. endfunc
  656.  
  657. " When just starting Vim, load the buffer menu later
  658. if has("vim_starting")
  659.   augroup LoadBufferMenu
  660.     au! VimEnter * if !exists("no_buffers_menu") | call <SID>BMShow() | endif
  661.     au  VimEnter * au! LoadBufferMenu
  662.   augroup END
  663. else
  664.   call <SID>BMShow()
  665. endif
  666.  
  667. endif " !exists("no_buffers_menu")
  668.  
  669. " Window menu
  670. amenu 70.300 &Window.&New<Tab>^Wn        <C-W>n
  671. amenu 70.310 &Window.S&plit<Tab>^Ws        <C-W>s
  672. amenu 70.320 &Window.Sp&lit\ To\ #<Tab>^W^^    <C-W><C-^>
  673. amenu 70.330 &Window.Split\ &Vertically<Tab>^Wv    <C-W>v
  674. if has("vertsplit")
  675.   amenu <silent> 70.332 &Window.Split\ File\ E&xplorer    :call MenuExplOpen()<CR>
  676.   if !exists("*MenuExplOpen")
  677.     fun MenuExplOpen()
  678.       if @% == ""
  679.     20vsp .
  680.       else
  681.     exe "20vsp " . expand("%:p:h")
  682.       endif
  683.     endfun
  684.   endif
  685. endif
  686. amenu 70.335 &Window.-SEP1-                :
  687. amenu 70.340 &Window.&Close<Tab>^Wc            :confirm close<CR>
  688. amenu 70.345 &Window.Close\ &Other(s)<Tab>^Wo        :confirm only<CR>
  689. amenu 70.350 &Window.-SEP2-                :
  690. amenu 70.355 &Window.Move\ &To.&Top<Tab>^WK        <C-W>K
  691. amenu 70.355 &Window.Move\ &To.&Bottom<Tab>^WJ        <C-W>J
  692. amenu 70.355 &Window.Move\ &To.&Left\ side<Tab>^WH    <C-W>H
  693. amenu 70.355 &Window.Move\ &To.&Right\ side<Tab>^WL    <C-W>L
  694. amenu 70.360 &Window.Rotate\ &Up<Tab>^WR        <C-W>R
  695. amenu 70.362 &Window.Rotate\ &Down<Tab>^Wr        <C-W>r
  696. amenu 70.365 &Window.-SEP3-                :
  697. amenu 70.370 &Window.&Equal\ Size<Tab>^W=        <C-W>=
  698. amenu 70.380 &Window.&Max\ Height<Tab>^W_        <C-W>_
  699. amenu 70.390 &Window.M&in\ Height<Tab>^W1_        <C-W>1_
  700. amenu 70.400 &Window.Max\ &Width<Tab>^W\|        <C-W>\|
  701. amenu 70.410 &Window.Min\ Widt&h<Tab>^W1\|        <C-W>1\|
  702.  
  703. " The popup menu
  704. amenu 1.10 PopUp.&Undo            u
  705. amenu 1.15 PopUp.-SEP1-            :
  706. vmenu 1.20 PopUp.Cu&t            "+x
  707. vmenu 1.30 PopUp.&Copy            "+y
  708. cmenu 1.30 PopUp.&Copy            <C-Y>
  709. nmenu 1.40 PopUp.&Paste            "+gP
  710. cmenu 1.40 PopUp.&Paste            <C-R>+
  711. if has("virtualedit")
  712.   vmenu 1.40 PopUp.&Paste        "-c<Esc><SID>Paste
  713.   imenu 1.40 PopUp.&Paste        <Esc><SID>Pastegi
  714. else
  715.   vmenu 1.40 PopUp.&Paste        "-c<Esc>gix<Esc><SID>Paste"_x
  716.   imenu 1.40 PopUp.&Paste        x<Esc><SID>Paste"_s
  717. endif
  718. vmenu 1.50 PopUp.&Delete        x
  719. amenu 1.55 PopUp.-SEP2-            :
  720. vnoremenu 1.60 PopUp.Select\ Blockwise    <C-V>
  721. anoremenu 1.70 PopUp.Select\ &Word    vaw
  722. anoremenu 1.80 PopUp.Select\ &Line    V
  723. anoremenu 1.90 PopUp.Select\ &Block    <C-V>
  724. anoremenu 1.100 PopUp.Select\ &All    ggVG
  725.  
  726. " The GUI toolbar (for MS-Windows and GTK)
  727. if has("toolbar")
  728.   amenu 1.10 ToolBar.Open        :browse confirm e<CR>
  729.   amenu <silent> 1.20 ToolBar.Save    :if expand("%") == ""<Bar>browse confirm w<Bar>else<Bar>confirm w<Bar>endif<CR>
  730.   amenu 1.30 ToolBar.SaveAll        :wa<CR>
  731.  
  732.   if has("printer")
  733.     amenu 1.40 ToolBar.Print    :hardcopy<CR>
  734.     vunmenu ToolBar.Print
  735.     vmenu ToolBar.Print        :hardcopy<CR>
  736.   elseif has("unix")
  737.     amenu 1.40 ToolBar.Print    :w !lpr<CR>
  738.     vunmenu ToolBar.Print
  739.     vmenu ToolBar.Print        :w !lpr<CR>
  740.   endif
  741.  
  742.   amenu 1.45 ToolBar.-sep1-    <nul>
  743.   amenu 1.50 ToolBar.Undo    u
  744.   amenu 1.60 ToolBar.Redo    <C-R>
  745.  
  746.   amenu 1.65 ToolBar.-sep2-    <nul>
  747.   vmenu 1.70 ToolBar.Cut    "+x
  748.   vmenu 1.80 ToolBar.Copy    "+y
  749.   cmenu 1.80 ToolBar.Copy    <C-Y>
  750.   nmenu 1.90 ToolBar.Paste    "+gP
  751.   cmenu      ToolBar.Paste    <C-R>+
  752.   if has("virtualedit")
  753.     vmenu      ToolBar.Paste    "-c<Esc><SID>Paste
  754.     imenu      ToolBar.Paste    <Esc><SID>Pastegi
  755.   else
  756.     vmenu      ToolBar.Paste    "-c<Esc>gix<Esc><SID>Paste"_x
  757.     imenu      ToolBar.Paste    x<Esc><SID>Paste"_s
  758.   endif
  759.  
  760.   if !has("gui_athena")
  761.     amenu 1.95 ToolBar.-sep3-        <nul>
  762.     amenu 1.100 ToolBar.Find        :promptfind<CR>
  763.     vunmenu ToolBar.Find
  764.     vmenu ToolBar.Find            y:promptfind <C-R>"<CR>
  765.     amenu 1.110 ToolBar.FindNext    n
  766.     amenu 1.120 ToolBar.FindPrev    N
  767.     amenu 1.130 ToolBar.Replace        :promptrepl<CR>
  768.     vunmenu ToolBar.Replace
  769.     vmenu ToolBar.Replace        y:promptrepl <C-R>"<CR>
  770.   endif
  771.  
  772. if 0    " disabled; These are in the Windows menu
  773.   amenu 1.135 ToolBar.-sep4-        <nul>
  774.   amenu 1.140 ToolBar.New        <C-W>n
  775.   amenu 1.150 ToolBar.WinSplit        <C-W>s
  776.   amenu 1.160 ToolBar.WinMax        :resize 200<CR>
  777.   amenu 1.170 ToolBar.WinMin        :resize 1<CR>
  778.   amenu 1.180 ToolBar.WinVSplit        <C-W>v
  779.   amenu 1.190 ToolBar.WinMaxWidth    <C-W>500>
  780.   amenu 1.200 ToolBar.WinMinWidth    <C-W>1\|
  781.   amenu 1.210 ToolBar.WinClose        :close<CR>
  782. endif
  783.  
  784.   amenu 1.215 ToolBar.-sep5-        <nul>
  785.   amenu <silent> 1.220 ToolBar.LoadSesn    :call <SID>LoadVimSesn()<CR>
  786.   amenu <silent> 1.230 ToolBar.SaveSesn    :call <SID>SaveVimSesn()<CR>
  787.   amenu 1.240 ToolBar.RunScript        :browse so<CR>
  788.  
  789.   amenu 1.245 ToolBar.-sep6-        <nul>
  790.   amenu 1.250 ToolBar.Make        :make<CR>
  791.   amenu 1.260 ToolBar.Shell        :sh<CR>
  792.   amenu 1.270 ToolBar.RunCtags        :!ctags -R .<CR>
  793.   amenu 1.280 ToolBar.TagJump        g]
  794.  
  795.   amenu 1.295 ToolBar.-sep7-        <nul>
  796.   amenu 1.300 ToolBar.Help        :help<CR>
  797.   amenu <silent> 1.310 ToolBar.FindHelp  :call <SID>Helpfind()<CR>
  798.  
  799. " Only set the tooltips here if not done in a language menu file
  800. if exists("*Do_toolbar_tmenu")
  801.   call Do_toolbar_tmenu()
  802. else
  803.   let did_toolbar_tmenu = 1
  804.   tmenu ToolBar.Open        Open file
  805.   tmenu ToolBar.Save        Save current file
  806.   tmenu ToolBar.SaveAll        Save all files
  807.   tmenu ToolBar.Print        Print
  808.   tmenu ToolBar.Undo        Undo
  809.   tmenu ToolBar.Redo        Redo
  810.   tmenu ToolBar.Cut        Cut to clipboard
  811.   tmenu ToolBar.Copy        Copy to clipboard
  812.   tmenu ToolBar.Paste        Paste from Clipboard
  813.   if !has("gui_athena")
  814.     tmenu ToolBar.Find        Find...
  815.     tmenu ToolBar.FindNext    Find Next
  816.     tmenu ToolBar.FindPrev    Find Previous
  817.     tmenu ToolBar.Replace        Find / Replace...
  818.   endif
  819.  if 0    " disabled; These are in the Windows menu
  820.   tmenu ToolBar.New        New Window
  821.   tmenu ToolBar.WinSplit    Split Window
  822.   tmenu ToolBar.WinMax        Maximise Window
  823.   tmenu ToolBar.WinMin        Minimise Window
  824.   tmenu ToolBar.WinVSplit    Split Window Vertically
  825.   tmenu ToolBar.WinMaxWidth    Maximise Window Width
  826.   tmenu ToolBar.WinMinWidth    Minimise Window Width
  827.   tmenu ToolBar.WinClose    Close Window
  828.  endif
  829.   tmenu ToolBar.LoadSesn    Load session
  830.   tmenu ToolBar.SaveSesn    Save current session
  831.   tmenu ToolBar.RunScript    Run a Vim Script
  832.   tmenu ToolBar.Make        Make current project
  833.   tmenu ToolBar.Shell        Open a command shell
  834.   tmenu ToolBar.RunCtags    Build tags in current directory tree
  835.   tmenu ToolBar.TagJump        Jump to tag under cursor
  836.   tmenu ToolBar.Help        Vim Help
  837.   tmenu ToolBar.FindHelp    Search Vim Help
  838. endif
  839.  
  840. " Select a session to load; default to current session name if present
  841. fun! s:LoadVimSesn()
  842.   if strlen(v:this_session) > 0
  843.     let name = v:this_session
  844.   else
  845.     let name = "Session.vim"
  846.   endif
  847.   execute "browse so " . name
  848. endfun
  849.  
  850. " Select a session to save; default to current session name if present
  851. fun! s:SaveVimSesn()
  852.   if strlen(v:this_session) == 0
  853.     let v:this_session = "Session.vim"
  854.   endif
  855.   execute "browse mksession! " . v:this_session
  856. endfun
  857.  
  858. endif
  859.  
  860. endif " !exists("did_install_default_menus")
  861.  
  862. " Define these items always, so that syntax can be switched on when it wasn't.
  863. " But skip them when the Syntax menu was disabled by the user.
  864. if !exists("did_install_syntax_menu")
  865.   am 50.212 &Syntax.&Manual        :syn manual<CR>
  866.   am 50.214 &Syntax.A&utomatic        :syn on<CR>
  867.   am <silent> 50.216 &Syntax.on/off\ for\ &This\ file :call <SID>SynOnOff()<CR>
  868.   if !exists("*s:SynOnOff")
  869.     fun s:SynOnOff()
  870.       if has("syntax_items")
  871.     syn clear
  872.       else
  873.     if !exists("g:syntax_on")
  874.       syn manual
  875.     endif
  876.     set syn=ON
  877.       endif
  878.     endfun
  879.   endif
  880. endif
  881.  
  882.  
  883. " Install the Syntax menu only when filetype.vim has been loaded or when
  884. " manual syntax highlighting is enabled.
  885. " Avoid installing the Syntax menu twice.
  886. if (exists("did_load_filetypes") || exists("syntax_on"))
  887.     \ && !exists("did_install_syntax_menu")
  888.   let did_install_syntax_menu = 1
  889.  
  890. " Define the SetSyn function, used for the Syntax menu entries.
  891. " Set 'filetype' and also 'syntax' if it is manually selected.
  892. fun! SetSyn(name)
  893.   if a:name == "fvwm1"
  894.     let use_fvwm_1 = 1
  895.     let use_fvwm_2 = 0
  896.     let name = "fvwm"
  897.   elseif a:name == "fvwm2"
  898.     let use_fvwm_2 = 1
  899.     let use_fvwm_1 = 0
  900.     let name = "fvwm"
  901.   else
  902.     let name = a:name
  903.   endif
  904.   if !exists("s:syntax_menu_synonly")
  905.     exe "set ft=" . name
  906.     if exists("g:syntax_manual")
  907.       exe "set syn=" . name
  908.     endif
  909.   else
  910.     exe "set syn=" . name
  911.   endif
  912. endfun
  913.  
  914. " The following menu items are generated by makemenu.vim.
  915. " The Start Of The Syntax Menu
  916.  
  917. am 50.10.100 &Syntax.AB.Abaqus :cal SetSyn("abaqus")<CR>
  918. am 50.10.110 &Syntax.AB.ABC :cal SetSyn("abc")<CR>
  919. am 50.10.120 &Syntax.AB.ABEL :cal SetSyn("abel")<CR>
  920. am 50.10.130 &Syntax.AB.Ada :cal SetSyn("ada")<CR>
  921. am 50.10.140 &Syntax.AB.Aflex :cal SetSyn("aflex")<CR>
  922. am 50.10.150 &Syntax.AB.AHDL :cal SetSyn("ahdl")<CR>
  923. am 50.10.160 &Syntax.AB.Amiga\ DOS :cal SetSyn("amiga")<CR>
  924. am 50.10.170 &Syntax.AB.Antlr :cal SetSyn("antlr")<CR>
  925. am 50.10.180 &Syntax.AB.Apache\ config :cal SetSyn("apache")<CR>
  926. am 50.10.190 &Syntax.AB.Apache-style\ config :cal SetSyn("apachestyle")<CR>
  927. am 50.10.200 &Syntax.AB.Applix\ ELF :cal SetSyn("elf")<CR>
  928. am 50.10.210 &Syntax.AB.Arc\ Macro\ Language :cal SetSyn("aml")<CR>
  929. am 50.10.220 &Syntax.AB.ASP\ with\ VBSages :cal SetSyn("aspvbs")<CR>
  930. am 50.10.230 &Syntax.AB.ASP\ with\ Perl :cal SetSyn("aspperl")<CR>
  931. am 50.10.240 &Syntax.AB.Assembly.680x0 :cal SetSyn("asm68k")<CR>
  932. am 50.10.250 &Syntax.AB.Assembly.GNU :cal SetSyn("asm")<CR>
  933. am 50.10.260 &Syntax.AB.Assembly.H8300 :cal SetSyn("asmh8300")<CR>
  934. am 50.10.270 &Syntax.AB.Assembly.Intel\ Itanium :cal SetSyn("ia64")<CR>
  935. am 50.10.280 &Syntax.AB.Assembly.Microsoft :cal SetSyn("masm")<CR>
  936. am 50.10.290 &Syntax.AB.Assembly.Netwide :cal SetSyn("nasm")<CR>
  937. am 50.10.300 &Syntax.AB.Assembly.PIC :cal SetSyn("pic")<CR>
  938. am 50.10.310 &Syntax.AB.Assembly.Turbo :cal SetSyn("tasm")<CR>
  939. am 50.10.320 &Syntax.AB.Assembly.Z-80 :cal SetSyn("z8a")<CR>
  940. am 50.10.330 &Syntax.AB.ASN\.1 :cal SetSyn("asn")<CR>
  941. am 50.10.340 &Syntax.AB.Atlas :cal SetSyn("atlas")<CR>
  942. am 50.10.350 &Syntax.AB.Automake :cal SetSyn("automake")<CR>
  943. am 50.10.360 &Syntax.AB.Avenue :cal SetSyn("ave")<CR>
  944. am 50.10.370 &Syntax.AB.Awk :cal SetSyn("awk")<CR>
  945. am 50.10.380 &Syntax.AB.Ayacc :cal SetSyn("ayacc")<CR>
  946. am 50.10.400 &Syntax.AB.B :cal SetSyn("b")<CR>
  947. am 50.10.410 &Syntax.AB.BASIC :cal SetSyn("basic")<CR>
  948. am 50.10.420 &Syntax.AB.BC\ calculator :cal SetSyn("bc")<CR>
  949. am 50.10.430 &Syntax.AB.BDF\ font :cal SetSyn("bdf")<CR>
  950. am 50.10.440 &Syntax.AB.BibFile :cal SetSyn("bib")<CR>
  951. am 50.10.450 &Syntax.AB.BIND\ configuration :cal SetSyn("named")<CR>
  952. am 50.10.460 &Syntax.AB.BIND\ zone :cal SetSyn("bindzone")<CR>
  953. am 50.10.470 &Syntax.AB.Blank :cal SetSyn("blank")<CR>
  954. am 50.20.100 &Syntax.CD.C :cal SetSyn("c")<CR>
  955. am 50.20.110 &Syntax.CD.C++ :cal SetSyn("cpp")<CR>
  956. am 50.20.120 &Syntax.CD.Crontab :cal SetSyn("crontab")<CR>
  957. am 50.20.130 &Syntax.CD.Cyn++ :cal SetSyn("cynpp")<CR>
  958. am 50.20.140 &Syntax.CD.Cynlib :cal SetSyn("cynlib")<CR>
  959. am 50.20.150 &Syntax.CD.Cascading\ Style\ Sheets :cal SetSyn("css")<CR>
  960. am 50.20.160 &Syntax.CD.Century\ Term :cal SetSyn("cterm")<CR>
  961. am 50.20.170 &Syntax.CD.CFG :cal SetSyn("cfg")<CR>
  962. am 50.20.180 &Syntax.CD.CHILL :cal SetSyn("ch")<CR>
  963. am 50.20.190 &Syntax.CD.Change :cal SetSyn("change")<CR>
  964. am 50.20.200 &Syntax.CD.ChangeLog :cal SetSyn("changelog")<CR>
  965. am 50.20.210 &Syntax.CD.Clean :cal SetSyn("clean")<CR>
  966. am 50.20.220 &Syntax.CD.Clever :cal SetSyn("cl")<CR>
  967. am 50.20.230 &Syntax.CD.Clipper :cal SetSyn("clipper")<CR>
  968. am 50.20.240 &Syntax.CD.Cold\ Fusion :cal SetSyn("cf")<CR>
  969. am 50.20.250 &Syntax.CD.Configure\ script :cal SetSyn("config")<CR>
  970. am 50.20.260 &Syntax.CD.Csh\ shell\ script :cal SetSyn("csh")<CR>
  971. am 50.20.270 &Syntax.CD.Ctrl-H :cal SetSyn("ctrlh")<CR>
  972. am 50.20.280 &Syntax.CD.Cobol :cal SetSyn("cobol")<CR>
  973. am 50.20.290 &Syntax.CD.CSP :cal SetSyn("csp")<CR>
  974. am 50.20.300 &Syntax.CD.CUPL.CUPL :cal SetSyn("cupl")<CR>
  975. am 50.20.310 &Syntax.CD.CUPL.simulation :cal SetSyn("cuplsim")<CR>
  976. am 50.20.320 &Syntax.CD.CVS\ commit :cal SetSyn("cvs")<CR>
  977. am 50.20.330 &Syntax.CD.CWEB :cal SetSyn("cweb")<CR>
  978. am 50.20.350 &Syntax.CD.Debian.Debian\ ChangeLog :cal SetSyn("debchangelog")<CR>
  979. am 50.20.360 &Syntax.CD.Debian.Debian\ Control :cal SetSyn("debcontrol")<CR>
  980. am 50.20.370 &Syntax.CD.Diff :cal SetSyn("diff")<CR>
  981. am 50.20.380 &Syntax.CD.Digital\ Command\ Lang :cal SetSyn("dcl")<CR>
  982. am 50.20.390 &Syntax.CD.Diva\ (with\ SKILL) :cal SetSyn("diva")<CR>
  983. am 50.20.400 &Syntax.CD.DNS :cal SetSyn("dns")<CR>
  984. am 50.20.410 &Syntax.CD.DOT :cal SetSyn("dto")<CR>
  985. am 50.20.420 &Syntax.CD.Dracula :cal SetSyn("dracula")<CR>
  986. am 50.20.430 &Syntax.CD.DSSSL :cal SetSyn("dsl")<CR>
  987. am 50.20.440 &Syntax.CD.DTD :cal SetSyn("dtd")<CR>
  988. am 50.20.450 &Syntax.CD.DTML\ (Zope) :cal SetSyn("dtml")<CR>
  989. am 50.20.460 &Syntax.CD.Dylan.Dylan :cal SetSyn("dylan")<CR>
  990. am 50.20.470 &Syntax.CD.Dylan.Dylan\ intr :cal SetSyn("dylanintr")<CR>
  991. am 50.20.480 &Syntax.CD.Dylan.Dylan\ lid :cal SetSyn("dylanlid")<CR>
  992. am 50.30.100 &Syntax.EFG.Eiffel :cal SetSyn("eiffel")<CR>
  993. am 50.30.110 &Syntax.EFG.Elm\ Filter :cal SetSyn("elmfilt")<CR>
  994. am 50.30.120 &Syntax.EFG.Embedix\ Component\ Description :cal SetSyn("ecd")<CR>
  995. am 50.30.130 &Syntax.EFG.ERicsson\ LANGuage :cal SetSyn("erlang")<CR>
  996. am 50.30.140 &Syntax.EFG.ESQL-C :cal SetSyn("esqlc")<CR>
  997. am 50.30.150 &Syntax.EFG.Eterm\ config :cal SetSyn("eterm")<CR>
  998. am 50.30.160 &Syntax.EFG.Expect :cal SetSyn("expect")<CR>
  999. am 50.30.170 &Syntax.EFG.Exports :cal SetSyn("exports")<CR>
  1000. am 50.30.190 &Syntax.EFG.Focus\ Executable :cal SetSyn("focexec")<CR>
  1001. am 50.30.200 &Syntax.EFG.Focus\ Master :cal SetSyn("master")<CR>
  1002. am 50.30.210 &Syntax.EFG.FORM :cal SetSyn("form")<CR>
  1003. am 50.30.220 &Syntax.EFG.Forth :cal SetSyn("forth")<CR>
  1004. am 50.30.230 &Syntax.EFG.Fortran :cal SetSyn("fortran")<CR>
  1005. am 50.30.240 &Syntax.EFG.FoxPro :cal SetSyn("foxpro")<CR>
  1006. am 50.30.250 &Syntax.EFG.Fvwm\ configuration :cal SetSyn("fvwm1")<CR>
  1007. am 50.30.260 &Syntax.EFG.Fvwm2\ configuration :cal SetSyn("fvwm2")<CR>
  1008. am 50.30.280 &Syntax.EFG.GDB\ command\ file :cal SetSyn("gdb")<CR>
  1009. am 50.30.290 &Syntax.EFG.GDMO :cal SetSyn("gdmo")<CR>
  1010. am 50.30.300 &Syntax.EFG.Gedcom :cal SetSyn("gedcom")<CR>
  1011. am 50.30.310 &Syntax.EFG.GP :cal SetSyn("gp")<CR>
  1012. am 50.30.320 &Syntax.EFG.GNU\ Server\ Pages :cal SetSyn("gsp")<CR>
  1013. am 50.30.330 &Syntax.EFG.GNUplot :cal SetSyn("gnuplot")<CR>
  1014. am 50.30.340 &Syntax.EFG.GTKrc :cal SetSyn("gtkrc")<CR>
  1015. am 50.40.100 &Syntax.HIJK.Haskell :cal SetSyn("haskell")<CR>
  1016. am 50.40.110 &Syntax.HIJK.Haskell-literate :cal SetSyn("lhaskell")<CR>
  1017. am 50.40.120 &Syntax.HIJK.Hercules :cal SetSyn("hercules")<CR>
  1018. am 50.40.130 &Syntax.HIJK.HTML :cal SetSyn("html")<CR>
  1019. am 50.40.140 &Syntax.HIJK.HTML\ with\ M4 :cal SetSyn("htmlm4")<CR>
  1020. am 50.40.150 &Syntax.HIJK.HTML/OS :cal SetSyn("htmlos")<CR>
  1021. am 50.40.160 &Syntax.HIJK.Hyper\ Builder :cal SetSyn("hb")<CR>
  1022. am 50.40.180 &Syntax.HIJK.Icon :cal SetSyn("icon")<CR>
  1023. am 50.40.190 &Syntax.HIJK.IDL :cal SetSyn("idl")<CR>
  1024. am 50.40.200 &Syntax.HIJK.Indent\ profile :cal SetSyn("indent")<CR>
  1025. am 50.40.210 &Syntax.HIJK.Inform :cal SetSyn("inform")<CR>
  1026. am 50.40.220 &Syntax.HIJK.Informix\ 4GL :cal SetSyn("fgl")<CR>
  1027. am 50.40.230 &Syntax.HIJK.Inittab :cal SetSyn("inittab")<CR>
  1028. am 50.40.240 &Syntax.HIJK.Inno\ Setup :cal SetSyn("iss")<CR>
  1029. am 50.40.250 &Syntax.HIJK.InstallShield\ Rules :cal SetSyn("ishd")<CR>
  1030. am 50.40.260 &Syntax.HIJK.Interactive\ Data\ Lang :cal SetSyn("idlang")<CR>
  1031. am 50.40.280 &Syntax.HIJK.Jam :cal SetSyn("jam")<CR>
  1032. am 50.40.290 &Syntax.HIJK.Jargon :cal SetSyn("jargon")<CR>
  1033. am 50.40.300 &Syntax.HIJK.Java.Java :cal SetSyn("java")<CR>
  1034. am 50.40.310 &Syntax.HIJK.Java.JavaCC :cal SetSyn("javacc")<CR>
  1035. am 50.40.320 &Syntax.HIJK.Java.Java\ Server\ Pages :cal SetSyn("jsp")<CR>
  1036. am 50.40.330 &Syntax.HIJK.Java.Java\ Properties :cal SetSyn("jproperties")<CR>
  1037. am 50.40.340 &Syntax.HIJK.JavaScript :cal SetSyn("javascript")<CR>
  1038. am 50.40.350 &Syntax.HIJK.Jess :cal SetSyn("jess")<CR>
  1039. am 50.40.360 &Syntax.HIJK.Jgraph :cal SetSyn("jgraph")<CR>
  1040. am 50.40.380 &Syntax.HIJK.KDE\ script :cal SetSyn("kscript")<CR>
  1041. am 50.40.390 &Syntax.HIJK.Kimwitu :cal SetSyn("kwt")<CR>
  1042. am 50.40.400 &Syntax.HIJK.Kixtart :cal SetSyn("kix")<CR>
  1043. am 50.50.100 &Syntax.L-Ma.Lace :cal SetSyn("lace")<CR>
  1044. am 50.50.110 &Syntax.L-Ma.Lamda\ Prolog :cal SetSyn("lprolog")<CR>
  1045. am 50.50.120 &Syntax.L-Ma.Latte :cal SetSyn("latte")<CR>
  1046. am 50.50.130 &Syntax.L-Ma.Lex :cal SetSyn("lex")<CR>
  1047. am 50.50.140 &Syntax.L-Ma.LFTP :cal SetSyn("lftp")<CR>
  1048. am 50.50.150 &Syntax.L-Ma.Lilo :cal SetSyn("lilo")<CR>
  1049. am 50.50.160 &Syntax.L-Ma.Lisp :cal SetSyn("lisp")<CR>
  1050. am 50.50.170 &Syntax.L-Ma.Lite :cal SetSyn("lite")<CR>
  1051. am 50.50.180 &Syntax.L-Ma.LOTOS :cal SetSyn("lotos")<CR>
  1052. am 50.50.190 &Syntax.L-Ma.Lout :cal SetSyn("lout")<CR>
  1053. am 50.50.200 &Syntax.L-Ma.Lua :cal SetSyn("lua")<CR>
  1054. am 50.50.210 &Syntax.L-Ma.Lynx\ Style :cal SetSyn("lss")<CR>
  1055. am 50.50.220 &Syntax.L-Ma.Lynx\ config :cal SetSyn("lynx")<CR>
  1056. am 50.50.240 &Syntax.L-Ma.M4 :cal SetSyn("m4")<CR>
  1057. am 50.50.250 &Syntax.L-Ma.MaGic\ Point :cal SetSyn("mgp")<CR>
  1058. am 50.50.260 &Syntax.L-Ma.Mail :cal SetSyn("mail")<CR>
  1059. am 50.50.270 &Syntax.L-Ma.Makefile :cal SetSyn("make")<CR>
  1060. am 50.50.280 &Syntax.L-Ma.MakeIndex :cal SetSyn("ist")<CR>
  1061. am 50.50.290 &Syntax.L-Ma.Man\ page :cal SetSyn("man")<CR>
  1062. am 50.50.300 &Syntax.L-Ma.Maple :cal SetSyn("maple")<CR>
  1063. am 50.50.310 &Syntax.L-Ma.Mason :cal SetSyn("mason")<CR>
  1064. am 50.50.320 &Syntax.L-Ma.Mathematica :cal SetSyn("mma")<CR>
  1065. am 50.50.330 &Syntax.L-Ma.Matlab :cal SetSyn("matlab")<CR>
  1066. am 50.60.100 &Syntax.Me-NO.MEL\ (for\ Maya) :cal SetSyn("mel")<CR>
  1067. am 50.60.110 &Syntax.Me-NO.Metafont :cal SetSyn("mf")<CR>
  1068. am 50.60.120 &Syntax.Me-NO.MetaPost :cal SetSyn("mp")<CR>
  1069. am 50.60.130 &Syntax.Me-NO.MS\ Module\ Definition :cal SetSyn("def")<CR>
  1070. am 50.60.140 &Syntax.Me-NO.Model :cal SetSyn("model")<CR>
  1071. am 50.60.150 &Syntax.Me-NO.Modsim\ III :cal SetSyn("modsim3")<CR>
  1072. am 50.60.160 &Syntax.Me-NO.Modula\ 2 :cal SetSyn("modula2")<CR>
  1073. am 50.60.170 &Syntax.Me-NO.Modula\ 3 :cal SetSyn("modula3")<CR>
  1074. am 50.60.180 &Syntax.Me-NO.Msql :cal SetSyn("msql")<CR>
  1075. am 50.60.190 &Syntax.Me-NO.MS-DOS.MS-DOS\ \.bat\ file :cal SetSyn("dosbatch")<CR>
  1076. am 50.60.200 &Syntax.Me-NO.MS-DOS.4DOS\ \.bat\ file :cal SetSyn("btm")<CR>
  1077. am 50.60.210 &Syntax.Me-NO.MS-DOS.MS-DOS\ \.ini\ file :cal SetSyn("dosini")<CR>
  1078. am 50.60.220 &Syntax.Me-NO.MS\ Resource\ file :cal SetSyn("rc")<CR>
  1079. am 50.60.230 &Syntax.Me-NO.Mush :cal SetSyn("mush")<CR>
  1080. am 50.60.240 &Syntax.Me-NO.Muttrc :cal SetSyn("muttrc")<CR>
  1081. am 50.60.260 &Syntax.Me-NO.Nastran\ input/DMAP :cal SetSyn("nastran")<CR>
  1082. am 50.60.270 &Syntax.Me-NO.Natural :cal SetSyn("natural")<CR>
  1083. am 50.60.280 &Syntax.Me-NO.Novell\ batch :cal SetSyn("ncf")<CR>
  1084. am 50.60.290 &Syntax.Me-NO.Not\ Quite\ C :cal SetSyn("nqc")<CR>
  1085. am 50.60.300 &Syntax.Me-NO.Nroff :cal SetSyn("nroff")<CR>
  1086. am 50.60.320 &Syntax.Me-NO.Objective\ C :cal SetSyn("objc")<CR>
  1087. am 50.60.330 &Syntax.Me-NO.OCAML :cal SetSyn("ocaml")<CR>
  1088. am 50.60.340 &Syntax.Me-NO.Omnimark :cal SetSyn("omnimark")<CR>
  1089. am 50.60.350 &Syntax.Me-NO.OpenROAD :cal SetSyn("openroad")<CR>
  1090. am 50.60.360 &Syntax.Me-NO.Open\ Psion\ Lang :cal SetSyn("opl")<CR>
  1091. am 50.60.370 &Syntax.Me-NO.Oracle\ config :cal SetSyn("ora")<CR>
  1092. am 50.70.100 &Syntax.PQ.Palm\ resource\ compiler :cal SetSyn("pilrc")<CR>
  1093. am 50.70.110 &Syntax.PQ.PApp :cal SetSyn("papp")<CR>
  1094. am 50.70.120 &Syntax.PQ.Pascal :cal SetSyn("pascal")<CR>
  1095. am 50.70.130 &Syntax.PQ.PCCTS :cal SetSyn("pccts")<CR>
  1096. am 50.70.140 &Syntax.PQ.PPWizard :cal SetSyn("ppwiz")<CR>
  1097. am 50.70.150 &Syntax.PQ.Perl.Perl :cal SetSyn("perl")<CR>
  1098. am 50.70.160 &Syntax.PQ.Perl.Perl\ POD :cal SetSyn("pod")<CR>
  1099. am 50.70.170 &Syntax.PQ.Perl.Perl\ XS :cal SetSyn("xs")<CR>
  1100. am 50.70.180 &Syntax.PQ.PHP\ 3-4 :cal SetSyn("php")<CR>
  1101. am 50.70.190 &Syntax.PQ.Phtml :cal SetSyn("phtml")<CR>
  1102. am 50.70.200 &Syntax.PQ.Pike :cal SetSyn("pike")<CR>
  1103. am 50.70.210 &Syntax.PQ.Pine\ RC :cal SetSyn("pine")<CR>
  1104. am 50.70.220 &Syntax.PQ.PL/M :cal SetSyn("plm")<CR>
  1105. am 50.70.230 &Syntax.PQ.PL/SQL :cal SetSyn("plsql")<CR>
  1106. am 50.70.240 &Syntax.PQ.PO\ (GNU\ gettext) :cal SetSyn("po")<CR>
  1107. am 50.70.250 &Syntax.PQ.Postfix\ main\ config :cal SetSyn("pfmain")<CR>
  1108. am 50.70.260 &Syntax.PQ.PostScript :cal SetSyn("postscr")<CR>
  1109. am 50.70.270 &Syntax.PQ.Povray :cal SetSyn("pov")<CR>
  1110. am 50.70.280 &Syntax.PQ.Povray\ configuration :cal SetSyn("povini")<CR>
  1111. am 50.70.290 &Syntax.PQ.Printcap :cal SetSyn("pcap")<CR>
  1112. am 50.70.300 &Syntax.PQ.Procmail :cal SetSyn("procmail")<CR>
  1113. am 50.70.310 &Syntax.PQ.Product\ Spec\ File :cal SetSyn("psf")<CR>
  1114. am 50.70.320 &Syntax.PQ.Progress :cal SetSyn("progress")<CR>
  1115. am 50.70.330 &Syntax.PQ.Prolog :cal SetSyn("prolog")<CR>
  1116. am 50.70.340 &Syntax.PQ.Purify\ log :cal SetSyn("purifylog")<CR>
  1117. am 50.70.350 &Syntax.PQ.Python :cal SetSyn("python")<CR>
  1118. am 50.80.100 &Syntax.R-Sg.R :cal SetSyn("r")<CR>
  1119. am 50.80.110 &Syntax.R-Sg.Radiance :cal SetSyn("radiance")<CR>
  1120. am 50.80.120 &Syntax.R-Sg.Ratpoison :cal SetSyn("ratpoison")<CR>
  1121. am 50.80.130 &Syntax.R-Sg.Readline\ config :cal SetSyn("readline")<CR>
  1122. am 50.80.140 &Syntax.R-Sg.RCS\ log\ output :cal SetSyn("rcslog")<CR>
  1123. am 50.80.150 &Syntax.R-Sg.Rebol :cal SetSyn("rebol")<CR>
  1124. am 50.80.160 &Syntax.R-Sg.Registry\ of\ MS-Windows :cal SetSyn("registry")<CR>
  1125. am 50.80.170 &Syntax.R-Sg.Remind :cal SetSyn("remind")<CR>
  1126. am 50.80.180 &Syntax.R-Sg.Renderman\ Shader\ Lang :cal SetSyn("sl")<CR>
  1127. am 50.80.190 &Syntax.R-Sg.Rexx :cal SetSyn("rexx")<CR>
  1128. am 50.80.200 &Syntax.R-Sg.Robots\.txt :cal SetSyn("robots")<CR>
  1129. am 50.80.210 &Syntax.R-Sg.Rpcgen :cal SetSyn("rpcgen")<CR>
  1130. am 50.80.220 &Syntax.R-Sg.RTF :cal SetSyn("rtf")<CR>
  1131. am 50.80.230 &Syntax.R-Sg.Ruby :cal SetSyn("ruby")<CR>
  1132. am 50.80.250 &Syntax.R-Sg.S-lang :cal SetSyn("slang")<CR>
  1133. am 50.80.260 &Syntax.R-Sg.Samba\ config :cal SetSyn("samba")<CR>
  1134. am 50.80.270 &Syntax.R-Sg.SAS :cal SetSyn("sas")<CR>
  1135. am 50.80.280 &Syntax.R-Sg.Sather :cal SetSyn("sather")<CR>
  1136. am 50.80.290 &Syntax.R-Sg.Scheme :cal SetSyn("scheme")<CR>
  1137. am 50.80.300 &Syntax.R-Sg.Screen\ RC :cal SetSyn("screen")<CR>
  1138. am 50.80.310 &Syntax.R-Sg.SDL :cal SetSyn("sdl")<CR>
  1139. am 50.80.320 &Syntax.R-Sg.Sed :cal SetSyn("sed")<CR>
  1140. am 50.80.330 &Syntax.R-Sg.Sendmail\.cf :cal SetSyn("sm")<CR>
  1141. am 50.80.340 &Syntax.R-Sg.SGML.SGML\ catalog :cal SetSyn("catalog")<CR>
  1142. am 50.80.350 &Syntax.R-Sg.SGML.SGML\ DTD :cal SetSyn("sgml")<CR>
  1143. am 50.80.360 &Syntax.R-Sg.SGML.SGML\ Declarations :cal SetSyn("sgmldecl")<CR>
  1144. am 50.80.370 &Syntax.R-Sg.SGML.SGML\ linuxdoc :cal SetSyn("sgmllnx")<CR>
  1145. am 50.90.100 &Syntax.Sh-S.Sh\ shell\ script :cal SetSyn("sh")<CR>
  1146. am 50.90.110 &Syntax.Sh-S.SiCAD :cal SetSyn("sicad")<CR>
  1147. am 50.90.120 &Syntax.Sh-S.Simula :cal SetSyn("simula")<CR>
  1148. am 50.90.130 &Syntax.Sh-S.Sinda.Sinda\ compare :cal SetSyn("sindacmp")<CR>
  1149. am 50.90.140 &Syntax.Sh-S.Sinda.Sinda\ input :cal SetSyn("sinda")<CR>
  1150. am 50.90.150 &Syntax.Sh-S.Sinda.Sinda\ output :cal SetSyn("sindaout")<CR>
  1151. am 50.90.160 &Syntax.Sh-S.SKILL :cal SetSyn("skill")<CR>
  1152. am 50.90.170 &Syntax.Sh-S.SLRN.SLRN\ rc :cal SetSyn("slrnrc")<CR>
  1153. am 50.90.180 &Syntax.Sh-S.SLRN.SLRN\ score :cal SetSyn("slrnsc")<CR>
  1154. am 50.90.190 &Syntax.Sh-S.SmallTalk :cal SetSyn("st")<CR>
  1155. am 50.90.200 &Syntax.Sh-S.SMIL :cal SetSyn("smil")<CR>
  1156. am 50.90.210 &Syntax.Sh-S.SMITH :cal SetSyn("smith")<CR>
  1157. am 50.90.220 &Syntax.Sh-S.SNMP\ MIB :cal SetSyn("mib")<CR>
  1158. am 50.90.230 &Syntax.Sh-S.SNNS.SNNS\ network :cal SetSyn("snnsnet")<CR>
  1159. am 50.90.240 &Syntax.Sh-S.SNNS.SNNS\ pattern :cal SetSyn("snnspat")<CR>
  1160. am 50.90.250 &Syntax.Sh-S.SNNS.SNNS\ result :cal SetSyn("snnsres")<CR>
  1161. am 50.90.260 &Syntax.Sh-S.Snobol4 :cal SetSyn("snobol4")<CR>
  1162. am 50.90.270 &Syntax.Sh-S.Snort\ Configuration :cal SetSyn("hog")<CR>
  1163. am 50.90.280 &Syntax.Sh-S.SPEC\ (Linux\ RPM) :cal SetSyn("spec")<CR>
  1164. am 50.90.290 &Syntax.Sh-S.Specman :cal SetSyn("specman")<CR>
  1165. am 50.90.300 &Syntax.Sh-S.Spice :cal SetSyn("spice")<CR>
  1166. am 50.90.310 &Syntax.Sh-S.Speedup :cal SetSyn("spup")<CR>
  1167. am 50.90.320 &Syntax.Sh-S.Squid :cal SetSyn("squid")<CR>
  1168. am 50.90.330 &Syntax.Sh-S.SQL :cal SetSyn("sql")<CR>
  1169. am 50.90.340 &Syntax.Sh-S.SQL\ Forms :cal SetSyn("sqlforms")<CR>
  1170. am 50.90.350 &Syntax.Sh-S.SQR :cal SetSyn("sqr")<CR>
  1171. am 50.90.360 &Syntax.Sh-S.Standard\ ML :cal SetSyn("sml")<CR>
  1172. am 50.90.370 &Syntax.Sh-S.Stored\ Procedures :cal SetSyn("stp")<CR>
  1173. am 50.90.380 &Syntax.Sh-S.Strace :cal SetSyn("strace")<CR>
  1174. am 50.100.100 &Syntax.TUV.Tads :cal SetSyn("tads")<CR>
  1175. am 50.100.110 &Syntax.TUV.Tags :cal SetSyn("tags")<CR>
  1176. am 50.100.120 &Syntax.TUV.TAK.TAK\ compare :cal SetSyn("tak")<CR>
  1177. am 50.100.130 &Syntax.TUV.TAK.TAK\ input :cal SetSyn("tak")<CR>
  1178. am 50.100.140 &Syntax.TUV.TAK.TAK\ output :cal SetSyn("takout")<CR>
  1179. am 50.100.150 &Syntax.TUV.Tcl/Tk :cal SetSyn("tcl")<CR>
  1180. am 50.100.160 &Syntax.TUV.TealInfo :cal SetSyn("tli")<CR>
  1181. am 50.100.170 &Syntax.TUV.Telix\ Salt :cal SetSyn("tsalt")<CR>
  1182. am 50.100.180 &Syntax.TUV.Termcap :cal SetSyn("ptcap")<CR>
  1183. am 50.100.190 &Syntax.TUV.Terminfo :cal SetSyn("terminfo")<CR>
  1184. am 50.100.200 &Syntax.TUV.TeX :cal SetSyn("tex")<CR>
  1185. am 50.100.210 &Syntax.TUV.TeX\ configuration :cal SetSyn("texmf")<CR>
  1186. am 50.100.220 &Syntax.TUV.Texinfo :cal SetSyn("texinfo")<CR>
  1187. am 50.100.230 &Syntax.TUV.TF\ mud\ client :cal SetSyn("tf")<CR>
  1188. am 50.100.240 &Syntax.TUV.Tidy\ configuration :cal SetSyn("tidy")<CR>
  1189. am 50.100.250 &Syntax.TUV.Trasys\ input :cal SetSyn("trasys")<CR>
  1190. am 50.100.260 &Syntax.TUV.TSS.Command\ Line :cal SetSyn("tsscl")<CR>
  1191. am 50.100.270 &Syntax.TUV.TSS.Geometry :cal SetSyn("tssgm")<CR>
  1192. am 50.100.280 &Syntax.TUV.TSS.Optics :cal SetSyn("tssop")<CR>
  1193. am 50.100.300 &Syntax.TUV.UIT/UIL :cal SetSyn("uil")<CR>
  1194. am 50.100.310 &Syntax.TUV.UnrealScript :cal SetSyn("uc")<CR>
  1195. am 50.100.330 &Syntax.TUV.Verilog\ HDL :cal SetSyn("verilog")<CR>
  1196. am 50.100.340 &Syntax.TUV.Vgrindefs :cal SetSyn("vgrindefs")<CR>
  1197. am 50.100.350 &Syntax.TUV.VHDL :cal SetSyn("vhdl")<CR>
  1198. am 50.100.360 &Syntax.TUV.Vim.Vim\ help\ file :cal SetSyn("help")<CR>
  1199. am 50.100.370 &Syntax.TUV.Vim.Vim\ script :cal SetSyn("vim")<CR>
  1200. am 50.100.380 &Syntax.TUV.Vim.Viminfo\ file :cal SetSyn("viminfo")<CR>
  1201. am 50.100.390 &Syntax.TUV.Virata :cal SetSyn("virata")<CR>
  1202. am 50.100.400 &Syntax.TUV.Visual\ Basic :cal SetSyn("vb")<CR>
  1203. am 50.100.410 &Syntax.TUV.VRML :cal SetSyn("vrml")<CR>
  1204. am 50.100.420 &Syntax.TUV.VSE\ JCL :cal SetSyn("vsejcl")<CR>
  1205. am 50.110.100 &Syntax.WXYZ.WEB :cal SetSyn("web")<CR>
  1206. am 50.110.110 &Syntax.WXYZ.Webmacro :cal SetSyn("webmacro")<CR>
  1207. am 50.110.120 &Syntax.WXYZ.Website\ MetaLanguage :cal SetSyn("wml")<CR>
  1208. am 50.110.130 &Syntax.WXYZ.Wdiff :cal SetSyn("wdiff")<CR>
  1209. am 50.110.140 &Syntax.WXYZ.Wget\ config :cal SetSyn("wget")<CR>
  1210. am 50.110.150 &Syntax.WXYZ.Whitespace\ (add) :cal SetSyn("whitespace")<CR>
  1211. am 50.110.160 &Syntax.WXYZ.WinBatch/Webbatch :cal SetSyn("winbatch")<CR>
  1212. am 50.110.170 &Syntax.WXYZ.Windows\ Scripting\ Host :cal SetSyn("wsh")<CR>
  1213. am 50.110.190 &Syntax.WXYZ.X\ Keyboard\ Extension :cal SetSyn("xkb")<CR>
  1214. am 50.110.200 &Syntax.WXYZ.X\ Pixmap :cal SetSyn("xpm")<CR>
  1215. am 50.110.210 &Syntax.WXYZ.X\ Pixmap\ (2) :cal SetSyn("xpm2")<CR>
  1216. am 50.110.220 &Syntax.WXYZ.X\ resources :cal SetSyn("xdefaults")<CR>
  1217. am 50.110.230 &Syntax.WXYZ.Xmath :cal SetSyn("xmath")<CR>
  1218. am 50.110.240 &Syntax.WXYZ.XML :cal SetSyn("xml")<CR>
  1219. am 50.110.250 &Syntax.WXYZ.XXD\ hex\ dump :cal SetSyn("xxd")<CR>
  1220. am 50.110.270 &Syntax.WXYZ.Yacc :cal SetSyn("yacc")<CR>
  1221. am 50.110.290 &Syntax.WXYZ.Zsh\ shell\ script :cal SetSyn("zsh")<CR>
  1222.  
  1223. " The End Of The Syntax Menu
  1224.  
  1225.  
  1226. am 50.195 &Syntax.-SEP1-                :
  1227.  
  1228. am 50.200 &Syntax.Set\ '&syntax'\ only        :let s:syntax_menu_synonly=1<CR>
  1229. am <silent> 50.202 &Syntax.Set\ '&filetype'\ too :call <SID>Nosynonly()<CR>
  1230. fun! s:Nosynonly()
  1231.   if exists("s:syntax_menu_synonly")
  1232.     unlet s:syntax_menu_synonly
  1233.   endif
  1234. endfun
  1235.  
  1236. am 50.210 &Syntax.&Off            :syn off<CR>
  1237. am 50.700 &Syntax.-SEP3-        :
  1238. am 50.710 &Syntax.Co&lor\ test        :sp $VIMRUNTIME/syntax/colortest.vim<Bar>so %<CR>
  1239. am 50.720 &Syntax.&Highlight\ test    :so $VIMRUNTIME/syntax/hitest.vim<CR>
  1240. am 50.730 &Syntax.&Convert\ to\ HTML    :so $VIMRUNTIME/syntax/2html.vim<CR>
  1241.  
  1242. endif " !exists("did_install_syntax_menu")
  1243.  
  1244. " Restore the previous value of 'cpoptions'.
  1245. let &cpo = s:cpo_save
  1246. unlet s:cpo_save
  1247.  
  1248. " vim: set sw=2 :
  1249.